home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 July / EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso / recent / gms_pi.lha / Pictures / defs.h < prev    next >
C/C++ Source or Header  |  1998-06-21  |  2KB  |  57 lines

  1.  
  2. #define CODE_FORM (0x464F524DL)
  3. #define CODE_BODY (0x424F4459L)
  4. #define CODE_ILBM (0x494C424DL)
  5. #define CODE_CAMG (0x43414D47L)
  6. #define CODE_CMAP (0x434D4150L)
  7. #define CODE_BMHD (0x424D4844L)
  8. #define CODE_ANNO (0x414E4E4FL)
  9. #define CODE_DRNG (0x44524E47L)
  10.  
  11. #define UNPACKSIZE 8192
  12. #define BUFFERSIZE 4096
  13.  
  14. #define OSV_HIRES (1L<<15)
  15. #define OSV_HAM   (1L<<11)
  16. #define OSV_EHB   (1L<<10)
  17. #define OSV_LACED (1L<<2)
  18.  
  19. extern struct SysObject *PicObject;
  20. extern struct GVBase    *GVBase;
  21. extern struct Module    *PictureMod;
  22.  
  23. void FreeModule(void);
  24. LONG UnpackPicture(struct Picture *, struct BMHD *, struct File *, LONG *CMAP, LONG CAMG);
  25. WORD SkipRow(struct BMHD *BMHD, BYTE *BODY, struct File *File, struct Bitmap *ILBMBitmap, WORD BPos);
  26. WORD UnpackPlane(struct BMHD *BMHD, struct File *File, struct Bitmap *ILBMBitmap, BYTE *Dest, BYTE *Buffer, WORD BufferPos);
  27.  
  28. LIBFUNC LONG PIC_CheckFile(mreg(__a0) struct File *, mreg(__a1) LONG *);
  29. LIBFUNC void PIC_CopyToUnv(mreg(__a0) LONG,   mreg(__a1) LONG);
  30. LIBFUNC void PIC_CopyFromUnv(mreg(__a0) LONG, mreg(__a1) LONG);
  31. LIBFUNC void PIC_Free(mreg(__a0) struct Picture *);
  32. LIBFUNC struct Picture * PIC_Get(mreg(__a0) struct Stats *);
  33. LIBFUNC LONG PIC_Init(mreg(__a0) struct Picture *);
  34. LIBFUNC struct Picture * PIC_Load(mreg(__a0) APTR);
  35. LIBFUNC LONG PIC_Query(mreg(__a0) struct Picture *);
  36. LIBFUNC LONG PIC_Read(mreg(__a0) struct Picture *,  mreg(__a1) BYTE *, mreg(__d0) LONG);
  37. LIBFUNC LONG PIC_SaveToFile(mreg(__a0) LONG argPicture, mreg(__a1) LONG argFile);
  38. LIBFUNC LONG PIC_Seek(mreg(__a0) struct Picture *,  mreg(__d0) LONG, mreg(__d1) WORD);
  39. LIBFUNC LONG PIC_Write(mreg(__a0) struct Picture *, mreg(__a1) BYTE *, mreg(__d0) LONG);
  40.  
  41. struct BMHD {
  42.   WORD  Width;       /* Picture width */
  43.   WORD  Height;      /* Picture height */
  44.   WORD  X;           /* ? */
  45.   WORD  Y;           /* ? */
  46.   BYTE  Depth;       /* Amount of planes */
  47.   BYTE  Mask;        /* Masking technique in use */
  48.   BYTE  Pack;        /* 1 if ByteRunOne, 0 if none */
  49.   BYTE  PAD;         /* Empty */
  50.   WORD  TColor;      /* Transparent colour number */
  51.   BYTE  XAspect;     /* Pixel Width */
  52.   BYTE  YAspect;     /* Height ratio */
  53.   WORD  ScrWidth;    /* Screen/ViewPort Width */
  54.   WORD  ScrHeight;   /* Screen/ViewPort Height */
  55. };
  56.  
  57.